Computing applications such as computer games and multimedia applications have used controls to allow users to manipulate game characters or other aspects of an application. Typically, such controls are input using, for example, controllers, remotes, keyboards, mice, or the like. More recently, computer games and multimedia applications have begun employing cameras and software gesture recognition engines to provide a human computer interface (“HCI”) or natural user interface (“NUI”). With HCI or NUI, user motions are detected, and some motions or poses represent gestures which are used to control game characters (e.g., a user's avatar) or other aspects of a multimedia application.
In a natural user interface, an image capture device captures images of the user's motions in its field of view. The field of view can be represented as a finite Euclidean three-dimensional (3-D) space. The data describing the user's motions may be used for a wide range of purposes. For example, games may be created to allow users to exercise by performing activities such as exercising or dancing. It may be desirable for a game device to be able to recognize a user's pattern of motion.